<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Aether.Physics2D: nkast.Aether.Physics2D.Dynamics.Joints Namespace Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="NugetLogo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Aether.Physics2D
   &#160;<span id="projectnumber">2.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('namespacenkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#enum-members">Enumerations</a>  </div>
  <div class="headertitle">
<div class="title">nkast.Aether.Physics2D.Dynamics.Joints Namespace Reference</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_angle_joint.html">AngleJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maintains a fixed angle between two bodies  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_angle_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_distance_joint.html">DistanceJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A distance joint rains two points on two bodies to remain at a fixed distance from each other. You can view this as a massless, rigid rod.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_distance_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_fixed_mouse_joint.html">FixedMouseJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A mouse joint is used to make a point on a body track a specified world point. This a soft constraint with a maximum force. This allows the constraint to stretch and without applying huge forces. NOTE: this joint is not documented in the manual because it was developed to be used in the testbed. If you want to learn how to use the mouse joint, look at the testbed.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_fixed_mouse_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_friction_joint.html">FrictionJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Friction joint. This is used for top-down friction. It provides 2D translational friction and angular friction.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_friction_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_gear_joint.html">GearJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A gear joint is used to connect two joints together. Either joint can be a revolute or prismatic joint. You specify a gear ratio to bind the motions together: coordinate1 + ratio * coordinate2 = ant The ratio can be negative or positive. If one joint is a revolute joint and the other joint is a prismatic joint, then the ratio will have units of length or units of 1/length.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_gear_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_joint_edge.html">JointEdge</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A joint edge is used to connect bodies and joints together in a joint graph where each body is a node and each joint is an edge. A joint edge belongs to a doubly linked list maintained in each attached body. Each joint has two joint nodes, one for each attached body.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_joint_edge.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_joint.html">Joint</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><b>JointFactory</b></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An easy to use factory for using joints. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_motor_joint.html">MotorJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A motor joint is used to control the relative motion between two bodies. A typical usage is to control the movement of a dynamic body with respect to the ground.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_motor_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_prismatic_joint.html">PrismaticJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A prismatic joint. This joint provides one degree of freedom: translation along an axis fixed in bodyA. Relative rotation is prevented. You can use a joint limit to restrict the range of motion and a joint motor to drive the motion or to model joint friction.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_prismatic_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_pulley_joint.html">PulleyJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The pulley joint is connected to two bodies and two fixed world points. The pulley supports a ratio such that: length1 + ratio * length2 &lt;= constant Yes, the force transmitted is scaled by the ratio.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_pulley_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_revolute_joint.html">RevoluteJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A revolute joint constrains to bodies to share a common point while they are free to rotate about the point. The relative rotation about the shared point is the joint angle. You can limit the relative rotation with a joint limit that specifies a lower and upper angle. You can use a motor to drive the relative rotation about the shared point. A maximum motor torque is provided so that infinite forces are not generated.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_revolute_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_rope_joint.html">RopeJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A rope joint enforces a maximum distance between two points on two bodies. It has no other effect. It can be used on ropes that are made up of several connected bodies, and if there is a need to support a heavy body. This joint is used for stabiliation of heavy objects on soft constraint joints.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_rope_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_weld_joint.html">WeldJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A weld joint essentially glues two bodies together. A weld joint may distort somewhat because the island constraint solver is approximate.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_weld_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_wheel_joint.html">WheelJoint</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A wheel joint. This joint provides two degrees of freedom: translation along an axis fixed in bodyA and rotation in the plane. You can use a joint limit to restrict the range of motion and a joint motor to drive the rotation or to model rotational friction. This joint is designed for vehicle suspensions.  <a href="classnkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints_1_1_wheel_joint.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:af92f943e3dc4a7d1fb537fa481094fa9"><td class="memItemLeft" align="right" valign="top"><a id="af92f943e3dc4a7d1fb537fa481094fa9"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>JointType</b> { <br />
&#160;&#160;<b>Unknown</b>
, <b>Revolute</b>
, <b>Prismatic</b>
, <b>Distance</b>
, <br />
&#160;&#160;<b>Pulley</b>
, <b>Gear</b>
, <b>Wheel</b>
, <b>Weld</b>
, <br />
&#160;&#160;<b>Friction</b>
, <b>Rope</b>
, <b>Motor</b>
, <b>Angle</b>
, <br />
&#160;&#160;<b>FixedMouse</b>
, <b>FixedRevolute</b>
, <b>FixedDistance</b>
, <b>FixedLine</b>
, <br />
&#160;&#160;<b>FixedPrismatic</b>
, <b>FixedAngle</b>
, <b>FixedFriction</b>
<br />
 }</td></tr>
<tr class="separator:af92f943e3dc4a7d1fb537fa481094fa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac55684958ee229b058a1c521cb259ff3"><td class="memItemLeft" align="right" valign="top"><a id="ac55684958ee229b058a1c521cb259ff3"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>LimitState</b> { <b>Inactive</b>
, <b>AtLower</b>
, <b>AtUpper</b>
, <b>Equal</b>
 }</td></tr>
<tr class="separator:ac55684958ee229b058a1c521cb259ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacenkast.html">nkast</a></li><li class="navelem"><a class="el" href="namespacenkast_1_1_aether.html">Aether</a></li><li class="navelem"><a class="el" href="namespacenkast_1_1_aether_1_1_physics2_d.html">Physics2D</a></li><li class="navelem"><a class="el" href="namespacenkast_1_1_aether_1_1_physics2_d_1_1_dynamics.html">Dynamics</a></li><li class="navelem"><a class="el" href="namespacenkast_1_1_aether_1_1_physics2_d_1_1_dynamics_1_1_joints.html">Joints</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
